package com.tools.web.work.excel.poi;

import com.tools.common.object.Note;

import java.lang.annotation.*;

@Target(ElementType.FIELD)
@Documented
@Retention(RetentionPolicy.RUNTIME)
@Note("需要配合 @ExcelEntity 注解使用。" +
        "放在 @ExcelEntity 标注的实体的属性上，" +
        "标识该属性会被写入到 Excel 中")
public @interface ExcelColumn {

    @Note("属性的顺序。从 0 开始")
    int sort();

    @Note("属性在 Excel 表头的别名，数组从 0 开始依次按层级来")
    String[] names();

    @Note("Cell 格子的宽度")
    int width() default ExcelField.DEFAULT_HEAD_WIDTH;

    @Note("多行相邻的值相同时是否合并单元格，默认为 false")
    boolean sameValueMerge() default false;
}
